package net.zdsoft.wpchat.support.dao;

import java.util.List;
import java.util.Map;

import net.zdsoft.wpchat.support.entity.SysOption;

/**
 * 获取系统参数dao
 * 
 * @author xuan
 * @version $Revision: 1.0 $, $Date: 2014-8-19 下午1:22:15 $
 */
public interface SysOptionDao {
    /**
     * 查找所有系统参数<name,value>
     * 
     * @return
     */
    Map<String, String> findSysOptions();

    /**
     * 查找name对应value的map
     * 
     * @return
     */
    Map<String, String> findName2ValueMap();

    /**
     * 查找所有系统参数列表
     * 
     * @return
     */
    List<SysOption> findAllSysOptions();

    /**
     * 更新
     * 
     * @param sysOption
     */
    void updateSysOption(SysOption sysOption);

    /**
     * 根据id删除
     * 
     * @param id
     */
    void deleteSysOptionByIds(String id);

    /**
     * 根据id查找（内部把String转成int查找）
     * 
     * @param id
     * @return
     */
    SysOption findSysOptionById(String id);

    /**
     * 新增
     * 
     * @param sysOption
     */
    void insertSysOption(SysOption sysOption);

    /**
     * 根据id查找
     * 
     * @param key
     * @return
     */
    String findSysOptionValue(String id);

    /**
     * 根据name批量查询
     * 
     * @param names
     * @return
     */
    List<SysOption> findSysOptionListByNames(String... names);

}
